package appapi.dao;


import appapi.Request.ModuletypeReq;
import appapi.entity.auth.ModuletypeEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 模块类别
 * 
 * @author lc
 * @version 1.0
 * @date 2023-05-17 10:08:27
 */
@Mapper
public interface ModuletypeMapper extends BaseMapper<ModuletypeEntity> {
    /**
     * 获取模块类别列表
     *
     * @param moduletypeReq 条件
     * @return
     */
    List<ModuletypeEntity> list(ModuletypeReq moduletypeReq);

    /**
     * 获取模块类别信息
     *
     * @param moduTypeId       modu_type_id
     * @return
     */
    ModuletypeEntity detail(@Param("moduTypeId") Long moduTypeId);

    /**
     * 返回满足模块类别条件的行数
     *
     * @param moduletypeEntity 模块类别信息
     * @return
     */
    int count(ModuletypeEntity moduletypeEntity);

    /**
     * 增加模块类别
     *
     * @param moduletypeEntity 模块类别信息
     * @return
     */
    int insertModuleType(ModuletypeEntity moduletypeEntity);

    /**
     * 修改模块类别
     *
     * @param moduletypeEntity 模块类别信息
     * @return
     */
    int updateModuleType(ModuletypeEntity moduletypeEntity);

    /**
     * 是否允许删除类别
     * @param moduTypeId
     * @return
     */
    int aollowDeleteModuleType(@Param("moduTypeId") Long moduTypeId);

    /**
     * 删除模块类别
     *
     * @param moduTypeId       类别ID
     * @return
     */
    int deleteModuleType(@Param("moduTypeId") Long moduTypeId);
}
